LlamaIndexのアップデートまとめ:0.6.19(2023/06/05) から 0.6.22(2023/06/10) まで
こんちには。
データアナリティクス事業本部 インテグレーション部 機械学習チームの中村です。
本記事は「0.6.19(2023/06/05)」から「0.6.22(2023/06/10)」までのLlamaIndexのアップデートまとめです。
ソースコードを見ながらアップデート点をピックアップしています。詳細はコード側も参照してみてください。
個人的な注目は以下の変更かなと思います。
- 0.6.20
- GPTというprefixが全体的に削除
- 0.6.21.post1
- DocArrayVectorStoreの追加
- 0.6.22
- KnowledgeGraphIndexというIndexが追加され、StorageContextにGraphStoreが追加
- CHANGELOG.mdが記載されるように
それでは見ていきましょう。
各アップデート
2023-06-05 LlamaIndex 0.6.19
LangChainへの連携が強化されている印象ですね。
- ToolsにOnDemandLoaderToolが追加
- LlamaIndexやLlamaHubのDataLoaderをLangChainのAgent内でのデータクエリツールとして使用可能に
- 公式ノートブック
- BaseToolにLangChainへのToolへの変換が実装
2023-06-06 LlamaIndex 0.6.20
インデックス名などの名前からGPTというprefixが削除されている点は注意が必要です。
- 各インデックスのGPTというprefixが削除
- 以下のような変更が行われていますので、旧バージョンからの移行の際は注意が必要です
変更前 | 変更後 |
---|---|
GPTKeywordTableIndex | KeywordTableIndex |
GPTSimpleKeywordTableIndex | SimpleKeywordTableIndex |
GPTRAKEKeywordTableIndex | RAKEKeywordTableIndex |
GPTListIndex | ListIndex |
GPTEmptyIndex | EmptyIndex |
GPTTreeIndex | TreeIndex |
GPTVectorStoreIndex | VectorStoreIndex |
GPTPandasIndex | PandasIndex |
GPTSQLStructStoreIndex | SQLStructStoreIndex |
GPTDocumentSummaryIndex | DocumentSummaryIndex |
- SimpleNodeParserのデフォルト初期化関数としてfrom_defaultsというclassmethodが追加
- QueryEngineにJSONQueryEngineが追加
- ToolSpecにSlackToolSpecが追加
2023-06-07 LlamaIndex 0.6.21
大きな変更は無いようです。
- GitHubのissueテンプレートが追加
- SimpleDirectoryReaderにfilename_as_id引数が追加
2023-06-07 LlamaIndex 0.6.21.post1
VectoreStoreの追加、CallbackHandlerの追加とpayloadの改版があります。
- VectorStoreに下記の3つが追加
- DocArrayVectorStore : 以下2つのVectoreStoreの親クラス
- DocArrayHnswVectorStore : Hnswlibは近傍探索ライブラリの一つ
- DocArrayInMemoryVectorStore : インメモリなDocArrayVectorStore
- TairVectoreStore : Alibaba CloudのTairデータベースの上に構築されるインデックス
- CallbackHandlerにWandbCallbackHandlerが追加
- CallbackHandlerのpayloadに何点か追加あり
- CBEventType.LLMのpayloadに消費したトークン量が追加
- CBEventType.QUERYのpayloadにquery_strとresponseが追加
2023-06-10 LlamaIndex 0.6.22
大きめの変更がいくつかあり、StorageContextにGraphStoreが追加されるのは影響が大きそうです。(とはいえKnowledgeGraphIndexを使わない場合は未設定となるだけになります)
その他、QueryEngineのいくつかの追加や変更、VectoreStoreの追加があります。
- IndexにKnowledgeGraphIndexの追加
- データストアとしてGraphStoreが追加(StorageContextにGraphStoreが追加)
- KnowledgeGraphIndex追加の影響
- GraphStoreTypeはSIMPLEとNEBULAの2種類で、それぞれSimpleGraphStoreとNebulaGraphStoreが担う
- QueryEngineに以下が追加
- SQLJoinQueryEngine
- CitationQueryEngine
- RetryGuidelineQueryEngine
- SQLAutoVectorQueryEngineの親クラスがBaseQueryEngineからSQLJoinQueryEngineに変更
- EvaluatorにGuidelineEvaluatorの追加
- RetryGuidelineQueryEngine追加の影響で、Evaluatorとして使用される
- VectorStoreにMongoDBVectorStoreが追加
- CHANGELOG.mdが記載されるように(今後は、本記事のようなまとめも不要になるかもしれません)
まとめ
いかがでしたでしょうか。
0.6.22からCHANGELOG.mdが記載されるようになりましたので、そちらを公式の記録として追っていくのも良いと思います。
本記事もご参考になれば幸いです。